diff --git a/board/pn62/cmd_pn62.c b/board/pn62/cmd_pn62.c
index 7329435..692160c 100644
--- a/board/pn62/cmd_pn62.c
+++ b/board/pn62/cmd_pn62.c
@@ -36,20 +36,20 @@
 /*
  * Command led: controls the various LEDs 0..11 on the PN62 card.
  */
-int do_led (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+int do_led(cmd_tbl_t * cmdtp, int flag, int argc, char *const argv[])
 {
-    unsigned int number, function;
+	unsigned int number, function;
 
-    if (argc != 3) {
-	cmd_usage(cmdtp);
-	return 1;
-    }
-    number = simple_strtoul(argv[1], NULL, 10);
-    if (number > PN62_LED_MAX)
-	return 1;
-    function = simple_strtoul(argv[2], NULL, 16);
-    set_led (number, function);
-    return 0;
+	if (argc != 3)
+		return cmd_usage(cmdtp);
+
+	number = simple_strtoul(argv[1], NULL, 10);
+	if (number > PN62_LED_MAX)
+		return 1;
+
+	function = simple_strtoul(argv[2], NULL, 16);
+	set_led(number, function);
+	return 0;
 }
 U_BOOT_CMD(
 	led    ,	3,	1,	do_led,
@@ -83,8 +83,7 @@
 	addr = simple_strtoul(argv[1], NULL, 16);
 	break;
     default:
-       cmd_usage(cmdtp);
-	return 1;
+        return cmd_usage(cmdtp);
     }
 
     printf ("## Ready for image download ...\n");
